package day03;

/*
@Author: 王少杰
@Date: 2025/1/2
@Time: 9:37
@FileName: Demo02.java
@描述:
方法重载:在类中可以定义多个同名的方法。这些方法参数类型、参数个数不同
    调用起来简单，println() 重载的方法。打印整数、字符串、浮点数、char、对象都可以使用这个方法。
    只是返回值类型不同，不构成重载

python 中没有方法重载，定义add(a,b) 可以传任意类型的数据
*/
public class Demo02 {
    public static void main(String[] args) {
        System.out.println(Calc.add(10, 20));
        System.out.println(Calc.add(10.5f, 20.5f));
        System.out.println(Calc.add(10, 20, 30));
        System.out.println(Calc.add("Hello ", "World"));

        System.out.println(Calc.add(10, 20, 30, 40, 50, 60, 70, 80, 90, 100));
    }
}

//计算类
class Calc{
    //static 静态方法。属于类的，类名.方法名调用.
    public static int add(int a,int b){
        return a + b;
    }
    public static float add(float aa,float bb){
        return aa + bb;
    }
    public static int add(int a,int b,int c){
        return a + b + c;
    }

    public static String add(String a,String b){
        return a + b;//字符串拼接
    }
    //可变参数int ...  当做数组使用
    public static String add(int a, int b, int ...cs){
        int sum = a + b;
        for (int c : cs){
            sum += c;
        }
        return "总和为:" + sum;
    }
}
